home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er 1988 January
/
64er_Magazin_88-01_1988_Markt__Technik_de_Side_B.d64
/
film irq.src
(
.txt
)
next >
Wrap
Commodore BASIC
|
2022-10-26
|
1KB
|
79 lines
100 getbyte = $b7f1
110 errorout = $a437
120 sprite = $0002
130 speed = $00fa
140 count = $00fb
150 filmseq = $00fc
160 v = $d000
170 vram = $0288
180 clrscr = $e544
190 irqvect = $0314
200 normirq = $ea31
210 cia2 = $dd00
220 endirq = $febc
230 *=$c738
240 jsr getbyte
250 cpx #8
260 bcc sprnrok
270 ldx #$e
280 jmp errorout
290 sprnrok *=*
300 stx sprite
310 jsr getbyte
320 stx speed
330 stx count
340 jsr filmbeg
350 lda #1
360 sta cia2
370 lda #$8c
380 sta vram
390 lda #$34
400 sta v+$18
410 jsr clrscr
420 sei
430 lda v+$11
440 and #$7f
450 sta v+$11
460 lda #0
470 sta v+$12
480 lda #<filmirq
490 sta irqvect
500 lda #>filmirq
510 sta irqvect+1
520 lda #$81
530 sta v+$1a
540 cli
550 rts
560 filmirq *=*
570 lda v+$19
580 sta v+$19
590 bmi film
600 jmp normirq
610 film *=*
620 dec count
630 bne endfilm
640 lda speed
650 sta count
660 ldy #0
670 getseq *=*
680 lda (filmseq),y
690 bpl noeoflm
700 jsr filmbeg
710 bne getseq
720 noeoflm *=*
730 ldx sprite
740 ora #$80
750 adr = *+1
760 sta $8ff8,x
770 inc filmseq
780 bne endfilm
790 inc filmseq+1
800 endfilm *=*
810 jmp endirq
820 filmbeg *=*
830 lda #0
840 sta filmseq
850 lda #$90
860 sta filmseq+1
870 rts